﻿//**************************************************************
//
// MoneyBaby Project - Open source payment processors for .NET
//
// Copyright 2007-2008 Marcus McConnell and BV Software
// www.CodePlex.com/MoneyBaby
//**************************************************************

using System;
using System.Collections.Generic;
using System.Text;

namespace BVSoftware.MoneyBaby
{
    public abstract class PaymentGatewaySettings
    {        
        private Uri _UrlLive = null;
        private Uri _UrlTest = null;
        private bool _TestMode = false;        

        public Uri UrlLive
        {
            get { return _UrlLive; }
            set { _UrlLive = value; }
        }
        public Uri UrlTest
        {
            get { return _UrlTest; }
            set { _UrlTest = value; }
        }
        public bool TestMode
        {
            get { return _TestMode; }
            set { _TestMode = value; }
        }


        public void PopulateFromGeneric(GenericPaymentGatewaySettings genericSettings)
        {
            this.UrlLive = genericSettings.UrlLive;
            this.UrlTest = genericSettings.UrlTest;
            this.TestMode = genericSettings.TestMode;
            PopulateChildFromGeneric(genericSettings);
        }

        public abstract void PopulateChildFromGeneric(GenericPaymentGatewaySettings genericSettings);
    }
}
